﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using Entity = SoTaiChinh.Library.Entity;
using Business = SoTaiChinh.Library.Business;
using Common = SoTaiChinh.Library.Common.Algorithm;
public partial class templates_admin_usercontrols_addimage : System.Web.UI.UserControl
{
    Entity.HinhAnh clsE_HinhAnh = new SoTaiChinh.Library.Entity.HinhAnh();
    Business.HinhAnh clsB_HinhAnh = new SoTaiChinh.Library.Business.HinhAnh();
    Entity.ChuDe clsE_ChuDe = new SoTaiChinh.Library.Entity.ChuDe();
    Business.ChuDe clsB_ChuDe = new SoTaiChinh.Library.Business.ChuDe();
    protected void Page_Load(object sender, EventArgs e)
    {
       
        if (!IsPostBack)
        {
            Alert.Load_DropDownList(ddlThuVien, clsB_ChuDe.SelectChuDeHinhAnh(), "TenChuDe", "IdChuDe", "------Chọn chủ đề------");
            string action = Request.QueryString["action"].ToString();
            if (action == "add")
            {
                lbTitle.Text = "Thêm mới hình ảnh";
                setVisible(true);
            }
            //Nếu là sửa
            if (action == "edit")
            {
                setVisible(false);
                lbTitle.Text = "Sửa nội dung hình ảnh";
                int info = Convert.ToInt32(Request.QueryString["info"].ToString());
                clsE_HinhAnh.IdHinh = info;
                DataTable dtHinh = clsB_HinhAnh.SelectPrimarykey(clsE_HinhAnh);
                txtMoTa.Text = dtHinh.Rows[0]["GioiThieu"].ToString();
                ddlThuVien.SelectedValue = dtHinh.Rows[0]["IdChuDe"].ToString();
                lbTenFile.Text = dtHinh.Rows[0]["TenFile"].ToString();
                ImbHinhAnh.ImageUrl = "~/uploads/imagesupload/" + dtHinh.Rows[0]["TenFile"].ToString();
            }
        }

    }
    private void setVisible(bool set)
    {
        ImbHinhAnh.Visible = !set;
        upload.Visible = set;
 
    }
    private void setThemChuDe(bool set)
    {
        ddlThuVien.Visible = !set;
        btnThemChuDe.Visible = !set;
        btnXoaChuDe.Visible = !set;
        txtTenChuDe.Visible = set;
        btnLuuChuDe.Visible = set;
        btnTroVe.Visible = set;
        
    }
    private bool check()
    {
        bool kiemtra = true;
        if (fuHinhAnh.FileName == "")
        { Alert.Show("Bạn chưa chọn hình ảnh để đăng"); kiemtra = false; }
        else if (btnLuuChuDe.Visible == true)
        { Alert.Show("Bạn hãy lưu và chọn chủ đề cho hình ảnh trước"); kiemtra = false; }
        else if (ddlThuVien.SelectedValue == "0")
        { Alert.Show("Bạn chưa chọn chủ đề cho hình ảnh"); kiemtra = false; }        
        else if (txtMoTa.Text == "")
        { Alert.Show("Bạn chưa giới thiệu về hình ảnh"); kiemtra = false; }
        return kiemtra;
    }
    protected void btnLuu_Click(object sender, EventArgs e)
    {
        bool save = false;
        string str = Server.MapPath("~/uploads/imagesupload/");
        string action = Request.QueryString["action"].ToString();
        clsE_HinhAnh.IdHinh = Convert.ToInt32(Request.QueryString["info"].ToString());
        if (fuHinhAnh.FileName != "")
            clsE_HinhAnh.TenFile = fuHinhAnh.FileName;
        else
            clsE_HinhAnh.TenFile = lbTenFile.Text;
        clsE_HinhAnh.IdChuDe = Convert.ToInt32(ddlThuVien.SelectedValue);
        clsE_HinhAnh.GioiThieu = txtMoTa.Text;
        clsE_HinhAnh.TrangThai = true;
        clsE_HinhAnh.NgayDang = DateTime.Now;         
        if (action == "add")
        {
            if (check())
            {
                fuHinhAnh.SaveAs(str + fuHinhAnh.FileName);             
                save = clsB_HinhAnh.Insert(clsE_HinhAnh);
                if (save)
                { Alert.Show("Thêm mới hình ảnh thành công !!!"); }
                else
                { Alert.Show("Thêm mới hình ảnh không thành công !!!"); }
            }
        }
        if (action == "edit")
        {
            if (fuHinhAnh.FileName != "")
            {
                File.Delete(Server.MapPath("~/uploads/imagesupload/" + lbTenFile.Text));
                fuHinhAnh.SaveAs(str + fuHinhAnh.FileName); 
            }
            save = clsB_HinhAnh.Update(clsE_HinhAnh);
            if (save)
            { Alert.Show("Sửa thông tin hình ảnh thành công !!!"); }
            else
            { Alert.Show("Sửa thông tin hình ảnh không thành công !!!"); }
 
        }
    }
    protected void btnQuayLai_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/admin/listimages.aspx");
    }
    protected void ImbHinhAnh_Click(object sender, ImageClickEventArgs e)
    {
        setVisible(true);
    }
    protected void btnLuuChuDe_Click(object sender, EventArgs e)
    {
        bool save = false;
        if (txtTenChuDe.Text == "")
        {
            Alert.Show("Bạn chưa nhập tên chủ đề");
        }
        else
        {
            clsE_ChuDe.TenChuDe = txtTenChuDe.Text;
            clsE_ChuDe.ChuDeHinhAnh = true;
            clsE_ChuDe.ChuDeTaiNguyen = false;
            clsE_ChuDe.ChuDeVideo = false;
            clsE_ChuDe.ChuDeHoiDap = false;
            save=clsB_ChuDe.Insert(clsE_ChuDe);
            if (save)
            {
                Alert.Show("Thêm chủ đề thành công !!!");
                Alert.Load_DropDownList(ddlThuVien, clsB_ChuDe.SelectChuDeHinhAnh(), "TenChuDe", "IdChuDe", "------Chọn chủ đề------");
                setThemChuDe(false);
            }
            else
            {
                Alert.Show("Thêm chủ đề không thành công !!!");
                setThemChuDe(false);

            }
        }
    }
    protected void btnThemChuDe_Click(object sender, EventArgs e)
    {
        setThemChuDe(true);
    }
    protected void btnXoaChuDe_Click(object sender, EventArgs e)
    {
        bool delete = false;
        if (ddlThuVien.SelectedValue != "0")
        {
            clsE_ChuDe.IdChuDe = Convert.ToInt32(ddlThuVien.SelectedValue);
            delete = clsB_ChuDe.Delete(clsE_ChuDe);
            if (delete)
            {
                Alert.Show("Xóa chủ đề thành công !!!");
                Alert.Load_DropDownList(ddlThuVien, clsB_ChuDe.SelectChuDeHinhAnh(), "TenChuDe", "IdChuDe", "------Chọn chủ đề------");
            }
            else
            {
                Alert.Show("Xóa chủ đề thành công !!!");
            }
        }
        else
        { Alert.Show("Bạn chưa chọn chủ đề cần xóa !!!"); }
    }
    protected void btnTroVe_Click(object sender, EventArgs e)
    {
        setThemChuDe(false);
    }
}
